package com.xh.audit.entity.auditdocument;

import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.web.multipart.MultipartFile;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;

/**
 * 审计文书模版  实体类。
 *
 * @author lhl
 * @since 2023-10-30
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table(value = "au_audit_document_template", schema = "audit")
public class AuditDocumentTemplate implements Serializable {

    /**
     * 主键
     */
    @Id(keyType = KeyType.Auto)
    private Integer id;

    /**
     * 模版编码
     */
    private String templateCode;

    /**
     * 模版名称
     */
    @NotEmpty(message = "templateName 不能空")
    private String templateName;

    /**
     * 模版类型: 字典
     */
    @NotNull(message = "templateType 不能空")
    private Integer templateType;

    /**
     * 上传人(内部)关联到系统;系统用户code
     */
    private Integer uploadeUser;

    /**
     * 上传人姓名(内部)关联到系统;系统用户姓名
     */
    private String uploadeUserName;

    /**
     * 上传日期
     */
    private Date uploadeDate;

    /**
     * 备注
     */
    private String remarks;

    /**
     * wps在线文档的文件模板
     */
    private Integer wpsTemplateFileId;

    /**
     * 状态
     */
    private Integer status;

    /**
     * 文件
     */
    @Column(ignore = true)
    private MultipartFile file;


}
